// Copyright XXX Inc.  All rights reserved.
// 许可证
// 作者：软件1902冯若轩

// 本软件提供自动生成中小学数学卷子的功能，生成的试卷保存在相应账号的文件夹下。
// 该文件是保存账号信息的数据库的声明

#ifndef PAPER_DATABASE_H_
#define PAPER_DATABASE_H_

#include "file_and_io.h"

namespace paper {
namespace database {

// 该类存储所有账号基本信息于一个vector容器中，并且提供题目查重的函数
// Test函数供测试、调试使用，软件正常使用中并无调用
class Database {
 public:
  // 创建时从用户数据文件中读取所有账号信息
  Database();

  // 检查登录是否成功，若成功返回账号类型
  char LoginCheck(const std::string& username, const std::string& password);
  // 调试函数，打印数据库中所有账号信息
  void Test();

 private:
  // 保存全部的账号基本信息，包括用户名、密码和类型
  std::vector<io::UserAccount> all_user_;
};
}  // namespace database
}  // namespace paper

#endif  // PAPER_DATABASE_H_
